package valeria;

public class J11Exception {
	//예외처리
	public static void main(String[]args){
		/*System.out.println("이글이 보이나요!");
		//System.out.println(100/0);예외가발생할수있는/오류발생!
		System.out.println("이글도 보이나요!");
		
		int i[]=new int[10];
		for(int j=1;j<=10;++j){
			System.out.println(i[j]); 오류발생!*/
		
			System.out.println("이글이 보이나요!");
			try{
			System.out.println(100/0);
			}catch(ArithmeticException ae){
				//ae.printStackTrace();
				ae.toString();
				System.out.println("0으로 나누면 안되요!");
			}
			System.out.println("이글도 보이나요!");
			
			int i[]=new int[10];
			
			for(int j=1;j<=10;++j){
				try{System.out.println(i[j]);
				}catch(ArrayIndexOutOfBoundsException aiob){
				System.out.println("배열 인덱스 초과");
				}
			}
			
			
			//다중캐치문사용-오류를 세분화해서 설명
			try{
				System.out.println(100/0);
				System.out.println(i[100]);
			}catch(ArithmeticException ae){
				System.out.println("0으로 나누면 안됩니다");
			}catch(ArrayIndexOutOfBoundsException aiob){
				System.out.println("배열 인덱스 초과");
			}
		
			//모든 예외의 조상 - Exception 프로그램중단,오류메시지
			try{
				
				System.out.println("시-작");
				System.out.println(100/0);
				System.out.println(i[500]);
				System.out.println("끄-읏");
			}catch(Exception ex){
				ex.printStackTrace();//오류상세정보출력
				System.out.println("치명적인 오류가 발생");
			}
			
		
		

	
	}

}
